<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:p="http://primefaces.org/ui">

<h:head lang="pt">
	<title>Cadastro de Vendas</title>
</h:head>

<h:body lang="pt">
	<h:form id="form">
		<p:messages for="messages" showDetail="true" autoUpdate="true"
			closable="true" globalOnly="true" />
		<p:panel id="pnlVenda" header="Dados da Venda" toggleable="true">
			<h:panelGrid id="pnlGridVenda" columns="3" cellpadding="5"
				cellspacing="5">
				<h:outputLabel value="Data" for="edtData" />
				<p:calendar id="edtData" title="Selecione a data"
					value="#{vendaBean.venda.data}" required="true"
					requiredMessage="Campo obrigatório!" pattern="dd/MM/yyyy"
					readonlyInput="true" navigator="true" />
				<p:message showDetail="true" for="edtData" />
					
					
				<h:outputLabel value="Cliente" for="cmbCliente" />
				<p:selectOneMenu id="cmbCliente" value="#{clienteBean.cliente.nome}"
					converter="clienteConverter" required="true"
					requiredMessage="Campo obrigatório!">
					<f:selectItem itemLabel="Selecione o cliente" />
					<f:selectItems value="#{clienteBean.clientes}" var="cliente"
						itemLabel="#{cliente.nome}" itemValue="#{nome}" />
				</p:selectOneMenu>
				<p:message showDetail="true" for="cmbCliente" />
			</h:panelGrid>
		</p:panel>

		<p:panel id="pnlProduto" header="Dados do Produto"
			toggleable="true">
			<h:panelGrid id="pnlGridProduto" columns="3" cellpadding="5"
				cellspacing="5">
				<h:outputLabel value="Produto" for="cmbProduto" />
				<p:selectOneMenu id="cmbProduto"
					value="#{produtoBean.produto}"
					converter="produtoConverter" required="true"
					requiredMessage="Campo obrigatório!">
					<f:selectItem itemLabel="Selecione o produto" />
					<f:selectItems value="#{vendaBean.produtos}" var="produto"
						itemLabel="#{produto.descricao}" itemValue="#{produto}" />
				</p:selectOneMenu>
				<p:message showDetail="true" for="cmbProduto" />

				<h:outputLabel value="Quantidade" for="edtQuantidade" />
				<p:inputText id="edtQuantidade" title="Digite a quantidade"
					value="#{produtoBean.produto.quantidade}" required="true"
					requiredMessage="Campo obrigatório!" />
				<p:message showDetail="true" for="edtQuantidade" />

				<h:outputLabel value="Preço Unitário" for="edtPreco" />
				<p:inputText id="edtPreco" title="Digite o preço unitário"
					value="#{vendaBean.venda.preco}" required="true"
					requiredMessage="Campo obrigatório!" />
				<p:message showDetail="true" for="edtPreco" />
			</h:panelGrid>

			<p:commandButton value="OK" title="Grava a venda"
				actionListener="#{vendaBean.salva()}"
				update=":form:pnlVenda,:form:pnlProduto,:form:pnlVendaAdd"/>
		</p:panel>

		<p:panel id="pnlVendaAdd" header="Vendas adicionadas"
			toggleable="true">
			<p:dataTable id="tblVendaAdd"
				value="#{vendaBean.venda}" var="venda"
				emptyMessage="Nenhuma venda adicionada">
				<p:column headerText="Produto">
					<h:outputText value="#{produto.descricao}" />
				</p:column>

				<p:column headerText="Quantidade">
					<h:outputText value="#{produto.quantidade}">
						<f:convertNumber pattern="#,##0.00##" />
					</h:outputText>
				</p:column>

				<p:column headerText="Preço Unitário">
					<h:outputText value="#{produto.preco}">
						<f:convertNumber pattern="R$ #,##0.00##" />
					</h:outputText>
				</p:column>

				<p:column>
					<p:commandButton value="Alterar" title="Altera a venda"
						icon="ui-icon-pencil"
						actionListener="#{vendaBean.altera(venda)}"
						process="@this" update=":form:pnlVendaAdd" />
				</p:column>

				<p:column>
					<p:commandButton value="Excluir" title="Exclui a venda"
						icon="ui-icon-trash"
						action="#{vendaBean.exclui(venda)}"
						process="@this"
						update=":form:pnlVenda,:form:pnlProduto,:formpnlVendaAdd" />
				</p:column>
			</p:dataTable>
		</p:panel>


	</h:form>
</h:body>
</html>